package com.snoob.springboot.user.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 系统权限（对应页面中的菜单和按钮）
 * </p>
 *
 * @author lixing_java@163.com
 * @since 2022-05-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("service_sys_permission")
public class SysPermissionEntity implements Serializable {

    private static final long serialVersionUID=1L;

    /**
     * 编号
     */
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;

    /**
     * 创建者账号
     */
    @TableField("create_user_account")
    private String createUserAccount;

    /**
     * 菜单的icon图标
     */
    @TableField("icon")
    private String icon;

    /**
     * 权限名称（全局唯一）
     */
    @TableField("permission_name")
    private String permissionName;

    /**
     * 权限描述
     */
    @TableField("description")
    private String description;

    /**
     * 权限类型（1:菜单,2:按钮）
     */
    @TableField("category")
    private Integer category;

    /**
     * 父级菜单编号，一级菜单的pid为0，id=0的为超级菜单
     */
    @TableField("pid")
    private String pid;

    /**
     * 菜单类型权限的等级（1:一级菜单、2:二级菜单、3:三级按钮）
     */
    @TableField("grade")
    private Integer grade;

    /**
     * 菜单排序标识
     */
    @TableField("sort")
    private Integer sort;

    /**
     * 权限状态（1:开启,2:禁用）
     */
    @TableField("active")
    private Integer active;

    /**
     * 权限绑定的指令，默认为#
     */
    @TableField("action")
    private String action;


}
